.\" Process this file with: groff -man -Tascii brickd.8
.TH BRICKD 8 2018-10-11 Tinkerforge
.\" Turn off justification for nroff. Always turn off hyphenation.
.if n .ad l
.nh
.SH NAME
brickd \- Tinkerforge Brick Daemon
.SH SYNOPSIS
.B brickd
[--help|--version|--check-config|--daemon [<log-file>]] [--debug [<filter>]] [--config-file <config-file>] [--pid-file <pid-file>]
.SH DESCRIPTION
The
.B brickd
program is part of the Tinkerforge software infrastructure. It routes
Tinkerforge Protocol (TFP) messages between Tinkerforge USB devices (Bricks)
and sockets; plain TCP/IP sockets and WebSockets are supported. This allows
user programs to use such sockets to communicate with Bricks and their
Bricklets connected to USB without having to deal with USB themselves. The
TCP/IP and WebSocket communication itself is encapsulated in API bindings
available for various programming languages.
.PP
Bricks connected to USB are identified using their vendor ID (16D0) and product
IDs (063D and 09E5).
.PP
By default, brickd binds to 0.0.0.0 (IPv4) and listens on port 4223 for
incoming TCP/IP connections. Listening for incoming WebSocket connections is
disabled by default for security reasons. The bind address (IPv4 or IPv6),
listen ports, dual-stack operation and WebSocket support can be configured in
the configuration file. See
.IR brickd.conf (5)
for further details.
.SH OPTIONS
.IP "\fB\-\-help\fR" 4
Print help for command line options and exit.
.IP "\fB\-\-version\fR" 4
Print version number and exit.
.IP "\fB\-\-check-config\fR" 4
Check configuration file for errors, print the result and exit.
.IP "\fB\-\-daemon\fR [<log-file>]" 4
Run as daemon and write log file to overridable location.
.IP "\fB\-\-debug\fR [<filter>]" 4
Set log severity level to \fIdebug\fR, overriding the configuration file
value. See
.IR brickd.conf (5)
for further details. Also takes an optional comma separated list of filter
statements that allow to control the visibility of debug messages (FIXME: Add
more details about filter statements).
.IP "\fB\-\-config\-file\fR <config-file>" 4
Read config from <config-file> instead of default location.
.IP "\fB\-\-pid\-file\fR <pid-file>" 4
Write PID to <pid-file> instead of default location.
.SH SIGNALS
On reception of
.B SIGHUP
brickd will close and reopen its log file.
On reception of
.B SIGUSR1
brickd will scan for added or removed USB devices. This is only useful if brickd
has no other means to detect USB hotplug on its own. That is the case if brickd
was compiled without libudev support and is using a libusb-1.0 version without
hotplug support (libusb-1.0 before 1.0.16).
.SH FILES
.SS "When run as \fBroot\fP"
.IP "\fI/etc/brickd.conf\fR" 4
The system wide default configuration file. See
.IR brickd.conf (5)
for further details. Can be overridden using the --config-file option.
.IP "\fI/var/log/brickd.log\fR" 4
The system wide default daemon-mode log file. Can be overridden using the optional
<log-file> argument to the --daemon option.
.IP "\fI/var/run/brickd.pid\fR" 4
The system wide default PID file. Can be overridden using the --pid-file option.
.SS "When run as \fBnon-root\fP"
.IP "\fI~/.brickd/brickd.conf\fR" 4
Per user default configuration file. See
.IR brickd.conf (5)
for further details. Can be overridden using the --config-file option.
.IP "\fI~/.brickd/brickd.log\fR" 4
Per user default daemon-mode log file. Can be overridden using the optional
<log-file> argument to the --daemon option.
.IP "\fI~/.brickd/brickd.pid\fR" 4
Per user default PID file. Can be overridden using the --pid-file option.
.SH BUGS
Please report all bugs you discover to
\fI\%https://github.com/Tinkerforge/brickd/issues\fR
.SH AUTHOR
Matthias Bolte <matthias@tinkerforge.com>
.SH COPYRIGHT
Copyright (C) 2012-2018 Matthias Bolte
.SH LICENSE
brickd is distributed under the terms of the GNU GPL v2+. This is free
software; see the source for copying conditions. There is NO warranty;
not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
.SH "SEE ALSO"
.IR brickd.conf (5)

For further information see \fI\%https://www.tinkerforge.com\fR
